System and method for activating software operating capabilities based on usage patterns and rules

ABSTRACT

A mobile telephone system device having an electronic assistant component is disclosed. The device includes a first software module configured to provide a first operating feature to a user of the mobile telephone system and a second software module that includes a first submodule configured to provide a first additional operating feature to the user and a second submodule configured to provide a second additional operating feature to the user of the mobile telephone system. A third module is configured to track the user&#39;s use of the first operating feature by storing usage data related to the user&#39;s interaction with the first software module. A fourth module analyzes the stored usage data and determines a usage data pattern. Based on the usage data pattern, a fifth module stores one or more rules which select one of the first submodule and the second submodule based on the usage data pattern and the selected one of the first submodule and the second submodule is offered to the user for installation on the mobile telephone system.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is continuation of U.S. patent application Ser. No.11/749,688, filed on May 16, 2007 (now U.S. Pat. No. 7,962,360), whichis a divisional of U.S. patent application Ser. No. 08/804,900, filed onFeb. 24, 1997. The disclosure of each of the above-referenced patentapplications is hereby incorporated by reference in its entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This application is related to a voice responsive telephone assistantdevice which has an network upgrade capability which offers features tothe device based on the type and frequency of use of the voiceresponsive telephone assistant device.

2. Description of the Related Technology

Today there are many different commercially available devices thatenable people to communicate with each other electronically. In additionto the ubiquitous telephone that has been around for decades, there noware cordless phones for the home, mobile phones for the car, handheldwireless phones which fit into a person's jacket pocket, pagers, localand wide area computer networks, and facsimile machines, to name a few.Undoubtedly, the number and type of devices and their sophisticationwill continue to increase over time. Indeed, it is likely that a daywill soon arrive when it will be possible for everybody to convenientlyand inexpensively be within arms reach of some communication device thatenables them to communicate with other people.

The proliferation of different types of communication devices and theincreasing diversity of communications media present new challenges. Howwill communications among the different devices and over the differentcommunications media be coordinated and managed so that people havetruly effective and useful access to each other? One challenge isassociated with communicating information between and across differentcommunications media. Another challenge is related to handling theinevitable increase in the number of calls so as to maintainaccessibility of users. For example, as more people come to rely ontheir wireless phones to transact business while on the road or awayfrom their off ices, their phones are likely to be busy a largerpercentage of the time. As a consequence, although a wireless phone cango anywhere with its owner, to the people tying to reach that owner whenthe phone is in use, the owner will still seem to be as inaccessible aswhen he did not carry a wireless phone. In addition, the more the ownerof such a device uses it, the more likely it will be that he will notknow that somebody else was trying to reach him and thus he may missimportant calls.

Thus, an obvious advantage of many of the new commercially availablecommunications devices is that they offer the possibility of greatermobility to the user. Unfortunately, however, it is not always having tobe near the office telephone that ties a business person to the office.The office provides other services that are also important and may notbe so mobile. Thus, to fully realize the greater mobility that isoffered by the new communications devices and media, these newtechnologies must be provided in a way that takes into account thebusiness person's dependance on other services besides communications.

In addition to the many various technologies and options which will beavailable to the user, there will also be costs involved for each ofthese technologies. A user may not want to pay for all of the technologyavailable to him. At the same time, the vendor of the technology willtry to and, in fact will, build into his equipment as many functions andneeded technologies as possible. As a result there is a constant tensionbetween the vendor or salesman trying to sell as many services andoptions as possible and the user who is limited, substantially, in whathe may either want, or think he wants, and can afford.

Further, this tension between vendor and user is not limited toelectronic communications systems. The complexities of today's systemsare encountered in many other fields, from the purchase of an office'scomputers and the software to run them, to the home television and videotape recorder. The tension also exists in those applications, which areserver based, in which hardwired or modem connected desktop computersare serviced by a central server. The central server can provide anumber of different functionalities to the user computers (oftendesignated network computers when connected, for example, over a cableconnection). Other technologies will be apparent to those working inother fields.

SUMMARY OF THE CERTAIN INVENTIVE ASPECTS

The invention, advantageously, provides a method and apparatus whichenables a user to obtain those items which he or she needs at times whenhe or she is either able to handle them or can afford to purchase them.The invention further enables the user to build up his or herfamiliarity and confidence for using a system in a manner which providesadvantageous, but not hurried, growth.

In one aspect, a mobile telephone system device having an electronicassistant component is provided. The device includes a first softwaremodule, the first software module configured to provide a firstoperating feature to a user of the mobile telephone system. The devicefurther includes a second software module, the second software modulecomprising a first submodule configured to provide a first additionaloperating feature to the user and a second submodule to provide a secondadditional operating feature to the user of the mobile telephone system.A third module is provided which is configured to track the user's useof the first operating feature by storing usage data related to theuser's interaction with the first software module. A fourth module isconfigured to analyze the stored usage data and to determine a usagedata pattern therefrom. A fifth module stores one or more rules whichselect one of the first submodule and the second submodule based on theusage data pattern; and a sixth module is configured to offer theselected one of the first submodule and the second submodule to the userfor installation on the mobile telephone system.

Another aspect provides for a computer implemented and user interactivemethod of regulating provision of software components from a set ofsoftware components arranged to control operation of a voice responsivetelephone assistant. The set of software components is predefined andeach software component in the set provides a distinct functionality.The method includes providing a computer system with a subset ofsoftware components from the set of software components and collectingusage data describing user interaction with the subset of softwarecomponents. The usage data is analyzed to identify a usage data pattern,and a software component is identified from the predefined set based onsaid identified usage data pattern. The user is then alerted to anavailability of said identified software component, wherein saididentified component is not within the subset of software components.

In other aspects, the collecting step features such steps as collectinginterval of use data for the product and/or statistical data regardinguse of the product. Such statistical data, in the illustratedenvironment of an electronic assistant, such as that described in U.S.patent application Ser. No. 08/316,635 (now U.S. Pat. No. 5,652,789),filed Sep. 30, 1994, and entitled “A Network Based KnowledgeableAssistant,” the contents of which are attached hereto as Exhibit A andare incorporated herein, in their entirety, by reference, includeidentifying when the user has sufficient mastery of different functions,(for example, when certain telephone numbers are called or received acertain minimum number of times in a week), and/or determining whenvarious functions are used in a meaningful way.

In another aspect of this invention, the method relates to brokeringupgraded functionality in a voice responsive telephone personalassistant system for enabling greater functionality for a productfunction in the system. The method features the steps of collecting usedata describing use of the product functions, analyzing the data todetermine whether at least one use threshold has been exceeded, andcommunicating to the user of the personal assistant system anavailability of the greater functionality for the system when at leastone use threshold has been exceeded.

The invention further relates to a system for brokering upgradedresources for enabling a greater functionality for a product function.The system, implemented preferably in a programmed computer, includessoftware for effecting the steps of collecting data describing userinteraction with the product function, analyzing the data to determinewhether at least one data pattern can be identified, and communicatingto a user of the product function, when at least one data pattern hasbeen identified, an availability of the greater functionality. Among theoperations effected by the computer software operating in the computersystem are collecting interval of use data for the product and/orcollecting statistical data regarding use of the product.

BRIEF DESCRIPTION OF THE DRAWINGS

Other advantages and features of the invention will become apparent fromthe following description of a preferred illustrated embodiment, takentogether with the drawings in which:

FIG. 1 shows the electronic assistant and office items.

FIG. 2 shows a first hardware configuration.

FIG. 3 shows a second configuration for the system architecture.

FIG. 4 is a process view of the software architecture.

DETAILED DESCRIPTION OF THE CERTAIN INVENTIVE EMBODIMENTS

Referring to FIG. 1, the invention is described in the context of anelectronic assistant which such as described in U.S. patent applicationSer. No. 08/316,635, noted above. The invention, however, is applicablein many other fields and with many other products or productfunctionalities where a selling up, or upgrading process, can beadvantageously employed.

Thus, referring to FIG. 2, in a most general case, a system according tothe invention can have a central processor 100 which connects to a localarea network 110 over a plurality of input/output lines 120. Alsoconnected to the local area network 110 are a plurality of user modules130. This structure can be used for example, where the user modules aretelephone connections, where local area network is a telephone networkand the lines 120 are connections from the telephone network to thecentral processor. In the instance of the electronic assistant describedin connection with U.S. patent Ser. No. 08/316,635, the centralprocessor provides a number of different functionalities, available tothe users through the modules 130. A plurality of user connections canbe active at any time as evidenced by the plurality of connecting lines120.

In a alternate structure, referring to FIG. 3, the central processoracts as a central server 200 which connects over either a network, whichcan be a telephone network, a cable network, a local area network, etc.to a plurality of so-called thin network computers 210 or theequivalent. In this configuration, the applications are stored at theserver and the network computers 210 operate upon the applicationprovided by the server. Other configurations will be apparent to thosepracticed in this field and the invention is not limited to theparticular configurations illustrated in FIGS. 2 and 3.

Referring then to FIG. 1, in the context of an electronic assistant, theequipment introduces many new concepts to the typical user orsubscriber, using what can best be described as a “virtual office”, as amodel. The assistant 10 works in an office containing the subscribers'objects, which are called “items”. An item is a piece of informationthat the electronic assistant stores in a database and works on for thesubscriber.

The subscriber can use spoken or touch-tone commands to have theelectronic assistant work on various items and the electronic assistantthen uses a dialog to gather the information it needs from thesubscriber to complete one or more tasks. Since many systems, such asthe electronic assistant noted above, can have many features, it is notuncommon for a vendor to price the product according to thefunctionality which has been purchased. In the electronic assistantidentified in U.S. patent application Ser. No. 08/316,635, the variousitems can include any of the following: a schedule 12, a message 14, acontact 16, (for example, a person 18, a group 20, or a place 22), areminder 24, a phone book 26, or trash 28.

Messages also include other items such a contact, a reminder, or a page,etc. Messages can also be multimedia or include any sort of compositeinformation. From the vendor's prospective, it is desirable to sell tothe subscriber as “fully loaded” a product, with as much functionality,as possible. In this manner, the subscriber can have a fully functionalproduct, at a cost, and the vendor is able to obtain the greatest pricesince the product functionality is the highest. Often, however, thesubscriber is neither willing nor able to pay the cost of a fullyfunctional system, or may not want, or believe that he does not want,all of the functionality which the vendor can provide. There thus existsan inherent conflict between the subscriber and the vendor whichultimately can result in either no sale or the sale of a very limitedproduct with little likelihood of further enhancements withoutsubstantial sales force involvement. In accordance with one aspect ofthe invention, however, there is included, in the delivered product, abrokering system which automatically makes available to the user orsubscriber, upon specified circumstances and costs, functionality beyondthat which he had purchased.

That functionality can in some instances be built into the system asoriginally delivered, but not yet made available to the user orsubscriber until he has purchased it, or it can be, for example,functionality such as a user software and/or hardware upgrade, whichincludes additional functions beyond those originally purchased by theuser or subscriber. The brokering system included in the productoriginally provided to the user or subscriber, in any circumstance inaccordance with the invention, has the ability to automatically monitorvarious data, such as the use of the product by the user, and therebymake decisions with regard to when to offer to the user the additionalfunctionality, and the type of functionality to be offered.

In accordance with another aspect of the inventive structure, as notedabove, the brokering system can be a server based centralized systemhaving full functionality while the network computers connected to ithave different or varying functionality. In such a system, the brokeringsystem is included in the centralized server and, depending upon variousdata which it monitors or seeks, such as the use of the server by theuser, it makes decisions with regard to when and how to offer to theuser any additional functionality, and the type of functionality to beoffered. In this instance, therefore, the monitoring system is not builtinto the user purchased portion of the system but is available at acentral site, server 200, along with, in typical instances, the fullfunctionality which will be offered.

In other aspects of the invention, the central site may not have thefull functionality and the operator of the central site may be requiredto purchase additional functionality once the demand for thatfunctionality becomes apparent. Thus, in the context of the electronicassistant described in U.S. application Ser. No. 08/316,635, a deliveredsystem can contain many features and functions. These include a highlevel function for call answering and voice messaging between groups,single number or call routing, basic scheduling and reminders, voicedialing phone numbers, voice dialing contacts, group features, unifiedmailbox, etc. While these features work well as a complete package, manyof them can stand alone as individual services, or work as combined setsof features.

There are two drawbacks of grouping the features together. One iscomplexity for the end user and the other is cost. The inventiondiscloses a method for providing users of a large application with amechanism to start off with a seemingly much smaller feature set andwhich, thereafter, can have additional features sold to the user orsubscriber (and added to the service) over time. As described in moredetail below, the system itself monitors the user's usage and other dataand offers or sells the additional services or functionalityautomatically.

As suggested above, grouping all the features together causes theapplication to be very large and therefor difficult to learn by the enduser. Placing all of the features in the initial product offeringresults in the user or subscriber having to pay for all of the resourcerequirements, development and support of the complete application (eventhough the subscriber may only use a smaller subset). This would besimilar to requiring someone, who is just starting out with a newcomputer, to pay for an entire Office Professional Suite.

If the user could start out with a simple word processor, and if thesystem could determine that he has learned the features of theprocessor, and is familiar “enough” with the product, then the systemcan suggest that he try a full-featured word producer. The system couldautomatically upgrade (for example, on-line and if desirable, on a trialbasis), deliver a quick on-line tutorial and bill them for the newfeatures. Then after a (short) time interval, the system could offer theuser a spelling and grammar checking module, then a minimal spreadsheet, a scheduler, etc. This can continue until the user has acquiredthe entire functionality of the Office Professional Suite. The userbuilds up functionality at his own pace and can decide whether or not toadd a database and presentation package to the bundle. That is,depending upon need and price, various upgrades can be purchased.

Thus, users or subscribers start with a set of basic services. As theyuse those services, the system automatically evaluates individual usagepatterns, demographics, and other data, and offers additional servicesthat fit the user's work style. Since subscribers or users acquire newservices at their own pace, they feel in control: choosing only thefeatures that they value, and mastering each new set of services beforeadding new ones.

While described in terms of an electronic assistant, the invention isequally applicable to other product functions and system structures,which can be upgraded in a continuous and rational manner. For purposesof the description which follows, however, the use of the electronicassistant shall be continued, in detail.

The basic functional elements, according to the illustrated electronicassistant embodiment of the invention are: 1. An Entry Level Service(ELS)—In the case of the electronic assistant, this can be a package offunctionality such as voice messaging or voice dialing. The user orsubscriber starts with the basic functionality in these packages. In thecase of voicemail, the user can, for example, retrieve, review and callback people who have left messages. In the case of voice dialing, theuser can have the capability to create and dial contacts.

2. Sell up modules—These are modules of new capabilities which can beplugged into the ELS's. For instance, the ability to receive a callwhile the user is listening to messages, the ability for the user tocreate voice notes which are stored with his messages, the ability toset reminders, etc. Further, some ELS's themselves might be sell upmodules for other ELS's. For instance, voice dialing (which is itself anELS) might be a sell up module for voicemail.

3. Usage Data—The illustrated system accumulates data from the operationof the system and the user's relative activity, a user's account, orgroups of users' or user's accounts. For instance, if a user is usingthe voicemail ELS (VM-ELS), the system can also keep track of eachcaller who calls him, the caller's phone number, how the caller says hisname, etc. The system might also keep track of the fact that the usercalls back some of these callers frequently while others are not calledback. Other types of data that might be collected include:—how manytimes a user has used a particular feature (for example, to determinewhether the user has exercised enough system functionality and is readyto learn more);—who calls the user; how often does the system determinea particular person has called (for example, to determine how and whento sell up the contacts and voice dialing functionalities);—what time ofday is the account used most often (for example, to enable the system tooffer to call the user at that time of day each day);—how often does theuser turn on and off their mobile phone (for example, to decide that thesubscriber needs a follow-me service).

4. Sell up Rules—Sell up rules are associated with sell up modules anddefine when the sell up modules are triggered by the Usage Data. Forexample, there can be a set of rules to define how/when to sell up fromthe VM-ELS to VM-ELS+Contact/Voice-dialing SUM (CVD-SUM).

The rule can be, for example: If: (the user has used VM-ELS for at least2 months) AND ((the user has received frequent calls for at least twomonths) AND (the user has used the call-phone number command twice perday for at least five days)) Then Sell up CVD-SUM 5. Automated MarketingManager Module—This is the module which analyzes the rules and makes thedecision to suggest the sell up. It can evaluate straight rules; and/orit can use fuzzy logic to help it make decisions. It can tune or adaptitself, (the rules and the “fuzzy-ness”) based on history. (Thistypically requires that the module collect data from many users asdescribed in more detail below.) For instance, there should be afeedback loop identifying if the sell up was successful so that themodule can tune or adapt itself based on a longer history of users. Thedata that is collected from multiple systems should be able to be usedand analyzed (for example, in an automated way) so that the module canbecome “smarter” (that is, trained) over time and can have greatersuccess when it offers a sell up.

Referring to FIG. 4, in accordance with the invention, the system at 300monitors various of the features and functions described above. If itdetermines any threshold is exceeded, at 302, the system, at 304,determines whether, according to its rules, a sell up should be offeredto the user. If no sell up is to be offered, the system returns to itsmonitoring mode at 300. If a sell up procedure is to be offered, theadded functionality is made available to the user, at 306, dependingupon the use pattern or data which initiated the sell up. The useraccepts or declines the added functionality, at 308; and if accepted,the added functionality is made available to the user on the offeredterms at 310. Control then returns to step 300.

As the system, whether it be the configuration of the control processor100 (FIG. 2) or central server 200 (FIG. 3) monitors the features andfunctions of the system, it compares its collected data againstpredetermined, or “fuzzy”, thresholds according to the illustratedembodiment of the invention. The data which it monitors can includesolely use data as described above, or, it can also include demographicor geographic data and other information provided by the user, to enablethe system to make a more intelligent decision regarding sell up. Thus,if the user is located in the Northeastern part of the United States,and it is winter, the system may offer the user access to additionaldatabases, for example, for use in skiing. In another situation, if thesystem knows that the user is an attorney, and the user has hadsufficient use of the system, the system can offer the user access to alawyer's database and the functionality associated therewith.

Thus, once a threshold has been exceeded, that is, once a data patternhas been identified, (and typically a threshold or data pattern isdependent upon one or more monitored parameters or pieces ofinformation), the system makes the decision whether the sell up shouldbe offered, as indicated at 304. The decision can be made, for example,by rule, that is, if the threshold is exceeded, a sell up should beoffered. On the other hand, if the system is adaptive, it can determinewhether offering a particular sell up to other users under the sameconditions was successful. If the success rate is minimal, then thesystem can decide that the sell up should not be offered. Thus, thesystem has the capability of gathering data from a plurality of usersand operating upon that data to determine whether the sell up should beoffered. The data, in the case of the system illustrated in FIG. 2, maybe stored individually at the user locations 130 in which case thesystem will need to acquire that data; and in the case of, for example,the system of FIG. 3, the data can be stored centrally. In eitherinstance, the brokering process operates upon the data in the samemanner.

As noted at step 306, the additional functionality is offered to theuser once the decision is made to offer the sell up. In accordance withthe illustrated electronic assistant embodiment of the invention, theoffer can be made in a number of different ways. In accordance with apreferred embodiment, the sell up is placed in an interactive message,listed among the various messages available to a user, and the messagedialog proceeds in an interactive manner. Thus, the system can make anoffer, can inquire of the user as to various aspects of the offer,including differing amounts of functionality, differing prices, anddiffering interests on the part of the user; and thereafter, ifaccepted, the system can provide the additional functionality as will bedescribed in more detail below.

In other embodiments of the electronic assistant, the availability ofthe additional functionality may be made in other ways, for example,during the ordinary dialog between the electronic assistant and theuser. In those systems wherein there is no voice interactive capability,the offer can be made on the user's display screen. Most often, in thiscircumstance, the system will open a dialog box, preferably aninteractive dialog box requiring either user key strokes or mouse clicksin response to questions posed by the system. In either circumstance,the user has the option of cancelling the sell up offer at any stage ofthe interactive dialog or accepting the additional functionality.

It should be noted, that this system thus has various methods forcommunicating the availability of the additional functionality to theuser, by interactive voice communications, by communications using theuser's display, and presumably even by communicating through a writtenmode such as the printer.

Finally, the functionality is made available to the user, if the userdecides to accept the offer, on the terms stated by the system, eitherby simply enabling that functionality should it already exist within thesystem (for example for other users, within the server 200, orpreviously packaged and available at user modules 130). Alternatively,the system may require a modem connection to a central server fordownloading the additional functionality to the local site, or it mayrequire the actual purchase and physical delivery of upgraded materials,such as software, from a central vendor location.

Additions, subtractions, and other modifications of the invention willbe apparent to those practiced in the field, and are within the scope ofthe following claims.

What is claimed is:
 1. A computer implemented and user interactivemethod of regulating provision of software components from a set ofsoftware components arranged to control operation of a computing device,wherein composition of the set is predefined and each software componentthereof provides a distinct functionality, the method comprising:storing, a subset of software components from the set of softwarecomponents, wherein the subset of software components has a firstfunctionality level associated therewith; controlling the operation ofthe computing device using the stored subset of software components;collecting usage data describing user interaction with the stored subsetof software components; generating usage data indicative of a usage datapattern, wherein the usage data pattern is indicative that a userthreshold has been exceeded, wherein the user threshold is based on theamount of usage of a feature of the first subset of software components;identifying a different software component from the predefined set basedon said generated usage data pattern and predetermined rules specifyinga relationship between usage of one of software components in the storedsubset and the identified software component, wherein the identifiedsoftware component has a second functionality level higher than thefirst functionality level and wherein the identified software componentprovides operating capabilities additional to those provided by thesubset of software components; alerting the user to an availability ofsaid identified software component for activation on the computer,wherein said identified software component is not within the subset ofsoftware components; and receiving and activating said identifiedsoftware component onto the computing device, responsive to the user'sinteractions with the alert.
 2. The method of claim 1, furthercomprising: collecting usage data from a plurality of users, collectingsoftware usage decisions from a plurality of users, and determining whento alert a user of the availability of said identified softwarecomponent based upon an analysis of group response data and decisionsabout to prior alerts relating to the identified software component. 3.The method of claim 1, wherein alerting the user to an availability ofsaid identified software component for activation on the computingdevice comprises verbally and interactively making an offer to said userfor said identified software component in using said computing device.4. The method of claim 1, wherein alerting the user to an availabilityof said identified software component for activation on the computingdevice comprises displaying a new message identifying the identifiedsoftware component to a user.
 5. The method of claim 1, wherein thecollecting comprises collecting interval of use data for said subset ofsoftware components.
 6. The method of claim 1, wherein the collectingcomprises compiling statistical data regarding use of said subset ofsoftware components.
 7. A system for regulating provision of softwarecomponents from a set of software components arranged to controloperation of a mobile telephone device, wherein composition of the setof software components is predefined and each software component in theset of software components provides a distinct functionality, the systemcomprising: a control module configured to control the operation of themobile device by executing a subset of software components from said setof software components, wherein the subset of software components has afirst functionality level associated therewith; a data collection moduleconfigured to collect usage data indicative of user interaction with thefirst subset of software components to identify a usage data patternrelated to the collected usage data, wherein the usage data pattern isindicative that a user threshold has been exceeded, wherein the userthreshold is based on the amount of usage of a feature of the firstsubset of software components; wherein the control module is furtherconfigured to access predetermined rules specifying a relationshipbetween usage of a first software component and selection of a second,different, software component, the second software component havingoperating capabilities additional to those provided by the firstsoftware component, and both said components being within saidpredefined set of software components; wherein the system is configuredto identify a software component from the set based on said identifiedusage data pattern and said predetermined rules and is furtherconfigured to alert the user to an availability of said identifiedsoftware component, wherein said identified component has a secondfunctionality level higher than said first functionality level, andwherein said identified component is not within the subset of softwarecomponents, and wherein the system is further configured to receive andactivate said identified software component onto the computing device ,responsive to the user's interactions with the alert.
 8. The system ofclaim 7, wherein the control module is further configured to receiveusage data relating to interactive communications with the mobiletelephone device, thereby collecting said usage data.
 9. The system ofclaim 7, wherein the mobile device is a voice responsive system having amobile telephone network capability.